package com.stylefeng.guns.rest.common.persistence.model;

import java.io.Serializable;

import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableName;
import java.io.Serializable;

/**
 * <p>
 * 活动表
 * </p>
 *
 * @author ruiyifeng123
 * @since 2019-03-20
 */
@TableName("wz_map_activity")
public class WzMapActivity extends Model<WzMapActivity> {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "map_activity_id", type = IdType.ID_WORKER)
    private Long mapActivityId;
    /**
     * 券库id
     */
    @TableField("coupon_market_id")
    private Long couponMarketId;
    /**
     * 用户编号
     */
    @TableField("user_code")
    private Long userCode;
    /**
     * 地图广告id
     */
    @TableField("adv_map_id")
    private Long advMapId;
    /**
     * 礼券id
     */
    @TableField("coupon_id")
    private Long couponId;
    /**
     * 商户名称
     */
    private String name;
    /**
     * 商户logo
     */
    private String logo;
    /**
     * 类型:1-商户活动；2-平台活动；
     */
    private Integer type;
    /**
     * 子类型：1-优惠券；2-兑换券；
     */
    private Integer subtype;
    /**
     * 领钱:1-限每人每天可领一次；2-限每人只可领一次；
     */
    private Integer usetype;
    /**
     * 参与类型：1-直接参与；2-扫码参与；
     */
    private Integer jointype;
    /**
     * 优惠方案
     */
    private String benefit;
    /**
     * 总数量
     */
    @TableField("total_number")
    private Integer totalNumber;
    /**
     * 参与人数
     */
    @TableField("join_number")
    private Integer joinNumber;
    /**
     * 需要分享人数
     */
    @TableField("need_share_number")
    private Integer needShareNumber;
    /**
     * 剩余数量
     */
    @TableField("surplus_number")
    private Integer surplusNumber;
    /**
     * 兑换物品图片
     */
    private String pic;
    /**
     * 开始时间
     */
    @TableField("begin_time")
    private Date beginTime;
    /**
     * 结束时间
     */
    @TableField("end_time")
    private Date endTime;
    /**
     * 状态：1-新增审核中；2-新增通过；3-新增驳回；4-发布中；5-完成；6-过期；
     */
    private Integer status;
    /**
     * 一级分类
     */
    @TableField("adv_map_category_first")
    private String advMapCategoryFirst;
    /**
     * 行政编号
     */
    @TableField("ad_code")
    private String adCode;
    /**
     * 驳回理由
     */
    @TableField("reject_remark")
    private String rejectRemark;
    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;


    public Long getMapActivityId() {
        return mapActivityId;
    }

    public void setMapActivityId(Long mapActivityId) {
        this.mapActivityId = mapActivityId;
    }

    public Long getCouponMarketId() {
        return couponMarketId;
    }

    public void setCouponMarketId(Long couponMarketId) {
        this.couponMarketId = couponMarketId;
    }

    public Long getUserCode() {
        return userCode;
    }

    public void setUserCode(Long userCode) {
        this.userCode = userCode;
    }

    public Long getAdvMapId() {
        return advMapId;
    }

    public void setAdvMapId(Long advMapId) {
        this.advMapId = advMapId;
    }

    public Long getCouponId() {
        return couponId;
    }

    public void setCouponId(Long couponId) {
        this.couponId = couponId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getLogo() {
        return logo;
    }

    public void setLogo(String logo) {
        this.logo = logo;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public Integer getSubtype() {
        return subtype;
    }

    public void setSubtype(Integer subtype) {
        this.subtype = subtype;
    }

    public Integer getUsetype() {
        return usetype;
    }

    public void setUsetype(Integer usetype) {
        this.usetype = usetype;
    }

    public Integer getJointype() {
        return jointype;
    }

    public void setJointype(Integer jointype) {
        this.jointype = jointype;
    }

    public String getBenefit() {
        return benefit;
    }

    public void setBenefit(String benefit) {
        this.benefit = benefit;
    }

    public Integer getTotalNumber() {
        return totalNumber;
    }

    public void setTotalNumber(Integer totalNumber) {
        this.totalNumber = totalNumber;
    }

    public Integer getJoinNumber() {
        return joinNumber;
    }

    public void setJoinNumber(Integer joinNumber) {
        this.joinNumber = joinNumber;
    }

    public Integer getNeedShareNumber() {
        return needShareNumber;
    }

    public void setNeedShareNumber(Integer needShareNumber) {
        this.needShareNumber = needShareNumber;
    }

    public Integer getSurplusNumber() {
        return surplusNumber;
    }

    public void setSurplusNumber(Integer surplusNumber) {
        this.surplusNumber = surplusNumber;
    }

    public String getPic() {
        return pic;
    }

    public void setPic(String pic) {
        this.pic = pic;
    }

    public Date getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(Date beginTime) {
        this.beginTime = beginTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getAdvMapCategoryFirst() {
        return advMapCategoryFirst;
    }

    public void setAdvMapCategoryFirst(String advMapCategoryFirst) {
        this.advMapCategoryFirst = advMapCategoryFirst;
    }

    public String getAdCode() {
        return adCode;
    }

    public void setAdCode(String adCode) {
        this.adCode = adCode;
    }

    public String getRejectRemark() {
        return rejectRemark;
    }

    public void setRejectRemark(String rejectRemark) {
        this.rejectRemark = rejectRemark;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Override
    protected Serializable pkVal() {
        return this.mapActivityId;
    }

    @Override
    public String toString() {
        return "WzMapActivity{" +
        "mapActivityId=" + mapActivityId +
        ", couponMarketId=" + couponMarketId +
        ", userCode=" + userCode +
        ", advMapId=" + advMapId +
        ", couponId=" + couponId +
        ", name=" + name +
        ", logo=" + logo +
        ", type=" + type +
        ", subtype=" + subtype +
        ", usetype=" + usetype +
        ", jointype=" + jointype +
        ", benefit=" + benefit +
        ", totalNumber=" + totalNumber +
        ", joinNumber=" + joinNumber +
        ", needShareNumber=" + needShareNumber +
        ", surplusNumber=" + surplusNumber +
        ", pic=" + pic +
        ", beginTime=" + beginTime +
        ", endTime=" + endTime +
        ", status=" + status +
        ", advMapCategoryFirst=" + advMapCategoryFirst +
        ", adCode=" + adCode +
        ", rejectRemark=" + rejectRemark +
        ", createTime=" + createTime +
        "}";
    }
}
